Flexible deterministic communications network

ABSTRACT

A system onboard a vehicle may include a vehicle management system (VMS) and a mission management system (MMS). The VMS may include a plurality of VMS nodes for controlling operation of the vehicle. The MMS may include a plurality of MMS nodes for controlling equipment associated with a mission of the vehicle. The system may also include a flexible deterministic communications network. The flexible deterministic communication network may be configurable for communications between each of the VMS nodes, between each of the MMS nodes and between the VMS nodes and the MMS nodes. The VMS nodes communicate using static, deterministic messages and the MMS nodes communicate using dynamic, non-deterministic messages.

FIELD

The present disclosure relates to communications and communicationsnetworks, and more particularly to a flexible deterministiccommunications network and method for use with a vehicle, such as anaircraft, spacecraft, vessel or other vehicle.

BACKGROUND

Current aircraft or other vehicles may use separate networks for vehiclemanagement system communications (VMS) and mission management system(MMS) communications. Examples of VMS systems may include systems,subsystems or components for controlling operation of the aircraft orvehicle. MMS systems may include systems, subsystems or components forperforming a mission of the aircraft or vehicle. Examples of systems,subsystems or components for performing a mission of an aircraft orvehicle may include but is not necessarily limited to surveillancesystems, such as integrated surveillance radar (ISR) systems, opticalsurveillance systems or other type surveillance systems, weaponssystems, electronic countermeasures or communications jamming systemsand other systems for performing a specific mission. In an aircraft orspacecraft, VMS nodes communicate with one another over a deterministicnetwork using Aeronautical Radio, Incorporated (ARINC) 664 or A 664message protocol or some other static, deterministic protocol. MMS nodesmay communicate with one another using a non-deterministic network, suchas an Ethernet. A bridging node must be provided for VMS nodes and MMSnodes to communicate with one another. The two separate communicationsnetworks add additional weight and expense to the vehicle. This can beparticularly important in vehicles such as aircraft and spacecraft whereadditional weight results in higher fuel and operating costs. The twoseparate communications networks also include more components that canfail and require additional time and expense to maintain. Accordingly,there is a need for a simplistic solution that can supportcommunications of both VMS and MMS systems and provide communicationsbetween the two systems when needed.

SUMMARY

In accordance with an embodiment, a system onboard a vehicle may includea vehicle management system (VMS) and a mission management system (MMS).The VMS may include a plurality of VMS nodes for controlling operationof the vehicle. The MMS may include a plurality of MMS nodes forcontrolling equipment associated with a mission of the vehicle. Thesystem may also include a flexible deterministic communications network.The flexible deterministic communications network may be configurablefor communications between each of the VMS nodes, between each of theMMS nodes and between the VMS nodes and the MMS nodes. The VMS nodescommunicate using static, deterministic messages and the MMS nodescommunicate using dynamic, non-deterministic messages.

In accordance with another embodiment, a system onboard a vehicle mayinclude a vehicle management system (VMS) and a mission managementsystem (MMS). The VMS may include a plurality of VMS nodes forcontrolling operation of the vehicle and the MMS may include a pluralityof MMS nodes for controlling equipment associated with a mission of thevehicle. An application may run on each VMS node and each MMS node. Adata distribution service layer may be associated with each applicationfor communications between the applications. An abstraction layer may beconfigured to hide reconfiguration of the data distribution servicelayer from the application for use of a deterministic communicationsprotocol.

In accordance with another embodiment, a method for transmittingmessages may include receiving a message and checking the receivedmessage against a current configuration of a flexible deterministiccommunications network. The message may also include transmitting thereceived message over the flexible deterministic communications networkin response to the received message conforming to the currentconfiguration and refraining from transmitting the received message overthe flexible deterministic communications network in response to thereceived message not conforming to the current configuration.

In accordance with an embodiment and any of the previous embodiments,the flexible deterministic network may include an end system associatedwith each VMS node and an end system associated with each MMS node. Theflexible deterministic network may also include a switch mechanismconfigurable for interconnecting the end systems.

In accordance with an embodiment and any of the previous embodiments,the flexible deterministic communications network may include a set ofstatic virtual channels and a set of dynamic virtual channels. Theflexible deterministic communications network may be configurable forcommunicating static, deterministic messages using the static virtualchannels and for communicating dynamic, non-deterministic messages usingthe set of dynamic virtual channels.

BRIEF DESCRIPTION OF THE DRAWINGS

The following detailed description of embodiments refers to theaccompanying drawings, which illustrate specific embodiments of thedisclosure. Other embodiments having different structures and operationsdo not depart from the scope of the present disclosure.

FIG. 1 is a block schematic diagram of a vehicle including an example ofa VMS, MMS and flexible deterministic communications network associatedwith the VMS and MMS in accordance with an embodiment.

FIG. 2 is a block schematic diagram of an example of a low deterministicnetwork including multiple publishing applications and a singlesubscribing application in accordance with an embodiment of the presentdisclosure.

FIG. 3 is a block schematic diagram of an example of a low deterministicnetwork including a single publishing application and a singlesubscribing application with two-way communications in accordance withan embodiment of the present disclosure.

FIG. 4 is a block schematic diagram of an example of a highdeterministic network including multiple publishing applications and asingle subscribing application in accordance with an embodiment of thepresent disclosure.

FIG. 5 is a block schematic diagram of an example of a highdeterministic network including a single publishing application and asingle subscribing application with two-way communications in accordancewith an embodiment of the present disclosure.

FIG. 6 is a flow chart of an example of a method for transmittingmessages by a flexible deterministic communications network inaccordance with an embodiment of the present disclosure.

FIG. 7 is a flow chart of an example of a method for transmittingmessages by a flexible deterministic communications network inaccordance with another embodiment of the present disclosure.

FIG. 8 is a flow chart of an example of a method for transmittingmessages by a flexible deterministic communications network inaccordance with a further embodiment of the present disclosure.

FIG. 9 is a flow chart of an example of a method for transmitting amessage formatted in a non-deterministic communications type protocolover a deterministic communications network or flexible deterministiccommunications network in accordance with an embodiment of the presentdisclosure.

DETAILED DESCRIPTION

The following detailed description of embodiments refers to theaccompanying drawings, which illustrate specific embodiments of thedisclosure. Other embodiments having different structures and operationsdo not depart from the scope of the present disclosure. Like referencenumerals may refer to the same element or component in the differentdrawings.

FIG. 1 is a block schematic diagram of a vehicle 100 including anexample of a vehicle management system (VMS) 102, mission managementsystem (MMS) 104 and flexible deterministic communications network 106associated with the VMS 102 and MMS 104 in accordance with anembodiment. The vehicle 100 may be an aircraft, spacecraft, watercraftor vessel or terrestrial vehicle. The VMS 102 may include a remote dataconcentrator 108 and a plurality of VMS nodes 110 a-110 n. The remotedata concentrator 108 may include a processor 112 and an end system 114.One or more applications 116 may run on the processor 112. The one ormore applications 116 may be configured for controlling operation of theremote data concentrator 108 and to receive and process signals from aplurality of sensors 117 associated with different systems, subsystemsor components for operation and control of the vehicle. The one or moreapplications 116 may also be configured to control operation ofactuators 118 or other components of the vehicle 100 to controloperation and maneuvering of the vehicle 100. For example, the sensors117 and actuators 118 may be associated with components of an aircraftthat may include but is not necessarily limited to flight controls orflight control surfaces, landing gear and components thereof,environmental systems, electrical, pneumatic and hydraulic systems,communications systems and other systems or subsystems for controllingoperation and maneuvering of the aircraft when airborne and on theground.

The end system 114 may couple or connect the remote data concentrator108 to the flexible deterministic network 106. While the end system 114may be shown in FIG. 1 as being associated with the remote dataconcentrator 108, the end system 114 may actually be considered to bepart of the flexible deterministic network 106 and may be reconfiguredin association with the flexible deterministic network 106 as describedherein. The end system 114 may include a routing table 120 for routingmessages to other components or systems over the flexible deterministicnetwork 106. The routing table 120 may include a static part 122 and adynamic part 124. The static part 122 may be configured for routingmessages to the VMS nodes 110 a-110 n or other components over theflexible deterministic network 106 that communicate using static,deterministic type messages. Static, deterministic messages may have apredetermined bandwidth or length. Static, deterministic messages mayalso be transmitted at certain times or time intervals or time slotsand/or at particular frequencies or under certain conditions or states.The dynamic part 124 of the routing table 120 may be configured forrouting messages to components of the MMS 104 or other components overthe flexible deterministic network 106 that may communicate usingdynamic, non-deterministic type messages. Dynamic, non-deterministicmessages do not necessarily have a set bandwidth or length. Dynamic,non-deterministic messages may be sent at any time and may be any lengthbased on needs of the MMS 204 and equipment or components for carryingout a mission or purpose of the vehicle 100. Whether the messages aredelivered may depend on the configuration of the flexible deterministicnetwork 106 at the time the message is being sent. As described in moredetail herein, the end system 114 may be reconfigured using the routingtable 120 including the static part 122 for transmitting and receivingstatic, deterministic type messages from the VMS nodes 110 a-110 n overthe flexible deterministic network 106 and using the dynamic part 124for transmitting and receiving dynamic, non-deterministic type messagesfrom components of the MMS 104. The static part 122 of the routing tableis configured before the vehicle 100 is powered on and cannot bereconfigured which is why it is referred to as the static part 122.

Each VMS node 110 a-110 n may include a processor 126 and one or moreapplications 128 running on the processor 126. Each VMS node 110 a-110 nmay be associated with one or more systems 130-132, subsystems orcomponents of the vehicle 100 that control operation and maneuvering ofthe vehicle 100. Examples of the systems 130-132, subsystems orcomponents of the vehicle 100, if the vehicle 100 is an aircraft, mayinclude but is not necessarily limited to flight controls, landing gear,cabin and cockpit environmental systems, electrical, pneumatic andhydraulic systems, communications systems, navigation systems and othersystems or subsystems for controlling operation and maneuvering of theaircraft when airborne and on the ground. The applications 128 runningon the processor 126 of each VMS node 110 a-110 n may be configured tocontrol operation of one or more associated systems 130-132, subsystemsor components. The processor 126 may be similar to the processor 112 ofthe remote data concentrator 208 or may be a unique device, such as amicroprocessor or other computing device programmed to perform specificfunctions to control a vehicle system, subsystem or component.

Each VMS node 110 a-110 n may also include an end system 134 to coupleor connect the VMS node 110 a-110 n to the flexible deterministicnetwork 106 for transmitting and receiving messages. While the endsystem 134 is shown as being associated with the VMS node 110 a, the endsystem 134 may actually be considered to be part of the flexibledeterministic network 106 and may be reconfigured as part of theflexible deterministic network as described herein. The end system 134may be similar to the end system 114 of the remote data concentrator.The end system 130 may also include a routing table 136 and the routingtable may include a static part 138 and a dynamic part 140. As describedin more detail below, the end system 134 may be reconfigured using therouting table 136 including the static part 138 for transmitting andreceiving static, deterministic messages over the flexible deterministicnetwork 106, and using the dynamic part 140 of the routing table 136 fortransmitting and receiving dynamic, non-deterministic messages over theflexible deterministic network 106.

In an aircraft, the VMS nodes 110 a-110 n and remote data concentrator108 may communicate with one another over the flexible deterministicnetwork 106 using Aeronautical Radio, Incorporated (ARINC) 664 or A 664message protocol which is a static, deterministic protocol.

The MMS 104 may include a mission sensor node 142 and a plurality of MMSnodes 144 a-144 n. The mission sensor node 142 may be coupled orconnected to a plurality of sensors 146 and to a plurality of actuators148 or other equipment. The mission sensor node 142 may controloperation of the actuators 148 in response to signals from the sensors146 and other information that the mission sensor node 142 may receivefrom other components. Each of the sensors 146 and actuators 148 may beassociated with a system, subsystem or component for performing amission or purpose of the vehicle 100. Examples of systems, subsystemsor components for performing a mission of the vehicle 100 may includebut is not necessarily limited to surveillance systems, such asintegrated surveillance radar (ISR) systems, optical surveillancesystems or other type surveillance systems, weapons systems, electroniccountermeasures or communications jamming systems and other systems forperforming a specific mission. MMS nodes 144 a-144 n may communicatewith one another using Data Distribution Service (DDS) protocol which isa dynamic, non-deterministic protocol. Operation or performance ofmission systems may not be as critical as performance of vehicle systemswhich may be important to prevent damage or loss of the vehicle 100.Therefore, VMS 102 communications may take precedence over MMS 104communications with respect to configuring the flexible deterministicnetwork 106 and end systems 114, 134, 154 and 170. While the end systems114, 134, 154 and 170 may be shown as being associated with or part ofthe respective nodes 108, 110 a-110 n, 142 and 144 a-144 n, the endsystems may also be considered to be part of the flexible deterministicnetwork 106.

The mission sensor node 142 may include a processor 150. One or moreapplications 152 may be operating on the processor 150. The one or moreapplications 152 may be configured to cause the processor 150 to controloperation of the mission sensor node 142 and the actuators 148 or otherequipment in response to signals from the sensors 146 for performingmissions by the vehicle 100.

The mission sensor node 142 may also include an end system 154. The endsystem 154 may couple or connect the mission sensor node 142 to theflexible deterministic network 106. While the end system 154 may beshown in FIG. 1 as being associated with the mission sensor node 142,the end system 154 may actually be considered to be part of the flexibledeterministic network 106. The end system 154 may be similar to the endsystem 114 of the remote data concentrator 108 and end system 134 ofeach VMS node 110 a-110 n. Accordingly, the end system 154 may include arouting table 156 for routing messages to other components or systemsover the flexible deterministic network 106. The routing table 156 mayinclude a static part 158 and a dynamic part 160. The static part 158may be configured for routing messages to the VMS nodes 110 a-110 n orother components over the flexible deterministic network 106 thatcommunicate using static, deterministic type messages. The dynamic part160 of the routing table 156 may be configured for routing messages tothe MMS nodes 144 a-144 n or other components over the flexibledeterministic network 106 that may communicate using dynamic,non-deterministic type messages. As described in more detail herein, theend system 154 may be reconfigured using the routing table 156 includingthe static part 158 for transmitting and receiving static, deterministictype messages from the VMS nodes 110 a-110 n and other components thatuse a similar deterministic communications protocol over the flexibledeterministic network 106. The dynamic part 160 may be used fortransmitting and receiving dynamic, non-deterministic type messages fromMMS nodes 144 a-144 n and other components that user a similarnon-deterministic communications protocol over the flexibledeterministic network 106.

Each MMS node 144 a-144 n may include a processor 162 and one or moreapplications 164 running on the processor 126. Each MMS node 144 a-144 nmay be associated with one or more mission oriented systems 166-168,subsystems or components for performing one or missions or purposes ofthe vehicle 100. As previously described, examples of the systems166-168, subsystems or components for performing missions of the vehicle100 may include but is not necessarily limited to surveillance systems,such as integrated surveillance radar (ISR) systems, opticalsurveillance systems or other type surveillance systems, weaponssystems, electronic countermeasures or communications jamming systemsand other systems for performing specific missions. The applications 164running on the processor 162 of each MMS node 144 a-144 n may beconfigured to control operation of one or more associated missionoriented systems, subsystems or components. The processor 162 may besimilar to the processors 112 and 126 of the remote data concentrator108 and VMS nodes 110 a-110 n or may be a unique device, such as amicroprocessor or other computing device programmed to perform specificfunctions to control a mission oriented system, subsystem or component.

Each MMS node 144 a-144 n may also include an end system 170 to coupleor connect the MMS node 144 a-144 n to the flexible deterministicnetwork 206 for transmitting and receiving messages. While the endsystem 170 is shown in the example of FIG. 1 as being associated withthe MMS node 144 a, the end system 170 may actually be considered to bepart of the flexible deterministic network 106 and may be reconfiguredtherewith. The end system 170 may be similar to the end system 154 ofthe mission sensor node 142 and end systems 114 and 134. The end system170 may also include a routing table 172. The routing table 172 mayinclude a static part 174 and a dynamic part 176. As described in moredetail below, the end system 170 may be reconfigured using the routingtable 172 including the static part 174 for transmitting and receivingstatic, deterministic messages over the flexible deterministic network106. The dynamic part 176 of the routing table 136 may be used forconfiguring the end system 170 for transmitting and receiving dynamic,non-deterministic messages over the flexible deterministic network 106.The flexible deterministic network 106 and end systems 114 may also bereconfigured under control of any of the applications 110, 128, 152 and164.

The flexible deterministic network 106 may include a controller 180. Thecontroller 180 may be a processor or other electronic device forcontrolling operation of the flexible deterministic network 106 and forconfiguring or reconfiguring at least portions of the flexibledeterministic network 106 as described in more detail herein fortransmitting or communicating static, deterministic messages anddynamic, non-deterministic messages. The controller 180 may beconfigured to perform at least some of the functions or operationsimilar to that described in the exemplary methods 600-800 of FIGS. 6-8.Any of the processors 112, 126, 150 and 162 on any of the nodes 108, 110a-110 n, 142, 144 a-144 n may also perform the function or functions orthe controller 180.

The flexible deterministic network 106 may also include a switchmechanism 182. The switch mechanism 182 may include a plurality ofswitches for routing messages between the nodes 108, 110 a-110 n, 142and 144 a-144 n. The switching mechanism 182 may also include or maygenerate one or more virtual channels 184. A virtual channel 184 may beestablished between a particular pair of nodes 108, 110 a-110 n, 142,144 a-144 n through the switch mechanism 182 for communication betweenthe particular pair of nodes. The particular pair of nodes may be anycombination of VMS nodes 110 a-110 n and MMS nodes 144 a-144 n, missionsensor node 142 and remote data concentrator 108. The flexibledeterministic network 106 or switch mechanism 182 may include or maycreate a set of static virtual channels 184 a and a set of dynamicvirtual channels 184 b. Accordingly, the flexible deterministic network106 may be configured for communicating static, deterministic messagesusing the static virtual channels 184 a and may be configured forcommunicating dynamic, non-deterministic messages using the set ofdynamic virtual channels 184 b. The virtual channels 184 may correspondto time slots which may be configured and/or allocated for transmissionof the particular type message. The flexible deterministic network 106may be configured for communications between a respective one of the VMSnodes 110 a-110 n and a respective one of the MMS nodes 144 a-144 n orbetween any combination of nodes using at least one of the set of staticvirtual channels 184 a or the set of dynamic virtual channels 184 bbased on the type of message sent.

The processor 180 may detect the type of message received by theflexible deterministic network 106 and confirm that the network 106 isproperly configured based on the type of message, i.e., a static,deterministic message or dynamic, non-deterministic message. Theprocessor 180 may reconfigure the flexible deterministic network 206 fortransmitting the message based on the particular type. A static virtualchannel 184 a may be provided or established for transmitting a static,deterministic message and a dynamic channel 184 b may be provided orestablished for transmitting a dynamic, non-deterministic message. Astatic virtual channel 184 a will have a predetermined bandwidth toconform to the static, deterministic message protocol. A dynamic virtualchannel 184 b may have a variable bandwidth that corresponds to thebandwidth of the dynamic, non-deterministic message being transmitted. Adynamic virtual channel 184 b may be created or established withoutaffecting the static virtual channel or channels.

Once a network configuration (including static and dynamic parts) isestablished, all messages are treated the same. There is no need to“detect” a message type. The only difference between the two messagetypes is that one message type is fixed (always the same messages,sizes, frequencies, etc.), and the other message type uses differentmessage sets (different messages, sizes and/or frequencies, etc.) atdifferent times. The first message type uses the static part of theconfiguration, and the second message type uses the dynamic part of theconfiguration. The term “reconfiguration” refers to changing the dynamicportion of the configuration, and impacts the switches 182, end systems114, 134, 154, 170 and the abstraction layers 410 a-410 c and 508 a-508b as described with respect to FIGS. 4 and 5.

The end systems 114, 134, 154 and 170 may be reconfigured similar tothat previously described using the routing tables 120, 136, 156 and 172based on reconfiguration of the flexible deterministic network 106 fortransmitting or communicating either static, deterministic messagetraffic or dynamic, non-deterministic message traffic. In accordancewith an embodiment, the end system 114 and end systems 170 of certainMMS nodes 144 a-144 n and end systems 134 of certain VMS nodes 110 a-110n may be selectively reconfigured for communications with one anotherbased on a particular type, static or dynamic, message traffic andappropriate virtual channels 184, static or dynamic, may be created orestablished. Similarly, end system 114 of the remote data concentrator108 and end system 154 of the mission sensor node 142 may bereconfigured base on a particular message set. Instructions may betransmitted by the processor 180 to the end systems or effected endsystems 114, 134, 154 and 170 of the particular configuration or modechange for communicating either static, deterministic messages ordynamic, non-deterministic messages. In another embodiment, the flexibledeterministic network 106 may be configured or reconfigured forcommunicating a particular message set and all end systems 114, 134, 154and 170 may be configured or reconfigured for communicating the samemessage set.

Operation or performance of mission systems may not be as critical asperformance of vehicle systems which may be important to prevent damageor loss of the vehicle 100. Therefore, VMS 102 communications ormessages may take precedence over MMS 104 communications or messageswith respect to configuring the flexible deterministic network 106 andend systems 114, 134, 154, 170. Accordingly, a dynamic,non-deterministic message may not be transmitted or the network 106 andend systems 114, 134, 154 and 170 may not be reconfigured forcommunicating the dynamic, non-deterministic message if there isinsufficient bandwidth for the message on the network 106 because ofstatic, deterministic message traffic. The network 106 and end systems114, 134, 154 and 170 may be reconfigured for communicating ortransmitting dynamic, non-deterministic message traffic if there issufficient available bandwidth on the flexible deterministic network asdetermined by the processor 180 or one of the applications 110, 128, 152or 164 operating on one of the nodes.

A mission mode manager 188 may detect reconfiguration (“reactive”) ofthe flexible deterministic network 106 which may be defined as a modechange, or the mission mode manager 188 may initiate a mode change andthereby cause a reconfiguration (“proactive”). A mission mode manager188 may reside on one or more MMS nodes 144 a-144 n. The mission modemanager 188 may transmit a notification to the MMS nodes 144 a-144 n orapplications 164 and mission sensor node 142 of the mode change orreconfiguration and to switch to the new mode or configuration fortransmitting either static, deterministic message traffic or dynamic,non-deterministic message traffic based on the configuration of thenetwork 106.

In accordance with an embodiment, one of the applications 110, 128, 152or 162 may have a need for a mode change and the application may controlreconfiguration of the flexible deterministic network 106 or at leastpertinent portions of the flexible deterministic network 106 forcommunicating the particular type messages or traffic. An example of amethod of an application requesting to change communications needs or amode change will be described in more detail with reference to FIG. 7.

FIG. 2 is a block schematic diagram of an example of a low deterministicnetwork 200 including multiple publishing applications 202 and 204 and asingle subscribing application 206 in accordance with an embodiment ofthe present disclosure. The low deterministic network 200 may beEthernet or similar network. The applications 202, 204 and 206 maycommunicate using data distribution service (DDS) or similar lowdeterministic or non-deterministic protocol. Each application 202, 204and 206 may include a DDS layer 208 a-208 c. The low deterministicnetwork 200 may communicate in only one direction from the publishingapplications 202 and 204 to the subscribing applications 206. Thefeatures of the low deterministic network 200 are not compatible with ahigh deterministic network such as that needed for communication betweenVMS nodes 110 a-110 n described with reference to FIG. 1.

FIG. 3 is a block schematic diagram of an example of a low deterministicnetwork 300 including a single publishing application 302 and a singlesubscribing application 304 with two-way communication in accordancewith an embodiment of the present disclosure. The two-way communicationmay be necessitated by features such as reliable quality of service,which requires acknowledgements for each message from subscribers. Theapplications 302 and 304 also communicate using DDS and may each includea DDS layer 306 a and 306 b. While this network may provide two-waycommunications, the network 300 may not be suitable for static,deterministic messages or traffic, such as communications between VMSnodes 110 a-110 n.

FIG. 4 is a block schematic diagram of an example of a highdeterministic network 400 including multiple publishing application 402and 404 and a single subscribing application 406 in accordance with anembodiment of the present disclosure. The applications 402, 404 and 406may also communicate using DDS and may each include a DDS layer 408a-408 c. In accordance with an embodiment, an abstraction layer 410a-410 c may be provided in association with each DDS layer 408 a-408 cto hide implementation changes to the DDS layer 408 a-408 c forcommunicating static, deterministic messages and dynamic,non-deterministic messages. The exemplary network 400 has communicationsin one direction from each of the publishing applications 402 and 404 tothe subscribing application 406. In accordance with an embodiment,applications similar to the applications 402, 404 and 406 with a DDSlayer 408 a-408 c and associated abstraction layer 410 a-410 c may beused for the applications 116, 128, 152 and 164 in FIG. 1. Applicationssimilar to applications 402, 404 and 406 may be used with the flexibledeterministic network 106 of FIG. 1 or may be used with a deterministicnetwork, such as ARINC 664 or A664, time-triggered packets (TTP) orsimilar deterministic network.

FIG. 5 is a block schematic diagram of an example of a highdeterministic network 500 including a single publishing application 502and a single subscribing application 504 with two-way communications inaccordance with an embodiment of the present disclosure. Eachapplication 502 and 504 may include a DDS layer 506 a and 506 b and anassociated abstraction layer 508 a and 508 b. The high deterministicnetwork 500 implements two-way communications as two separate one-waycommunications, which allows for acknowledgement and may provide a morereliable quality of service compared to the network 400. Applicationssimilar to the applications 502 and 504 with DDS layer 506 a and 506 band abstraction layer 508 a and 508 b may also be used for theapplications in FIG. 1 and may include two-way communications over adeterministic network, such as ARINC 664, TTP or similar deterministicnetwork or the flexible deterministic network 106 as described withreference to FIG. 1.

The abstraction layer 410 and 508 hides all the implementation changesto the DDS layers 408 and 506 from the application 402-406, 502 and 504using that protocol. The implementation changes are necessitated by theuse of the deterministic communication protocol. For example, multiplepublishing applications are implemented over ARINC 664 protocol usingmultiple virtual channels or links (one per publisher). This can behidden from the application by the use of the abstraction layer 410 and508. Similarly, messages requiring acknowledgements and theircorresponding acknowledgements were sent on the same channel previously.Using ARINC 664, acknowledgements would be sent on separate virtualchannels or links. This implementation detail can also be hidden fromthe applications using such messages by the abstraction layer 410 and508.

The solution described with reference to FIGS. 4 and 5 is to map DDStopics to communication slots (such as A664 virtual links or channels ortime-triggered packets in TTP), and to provide additional capabilitiesthat automatically perform the data manipulations necessary so thatapplications running on top can be agnostic to the underlyingcommunication mechanism. The new capabilities may be integrated into theDDS middleware layer, or be part of a separate layer on top of DDS, suchas an abstraction layer. Topics may be treated as communication slotswith single publishers and multiple subscribers. The capability isprovided to read from multiple communication slots to simulate thebehavior of multiple publishers. The capability is also provided to useseparate communication slots to simulate bi-direction communication forfeatures such as acknowledgements, liveness of subscribers andrequesting historical data. Capabilities that are unsuitable for adeterministic environment (such as creating new topics at run time) maybe disabled and standard error messages may be provided if thesefunctions are invoked. Development tools may be provided that canprocess documents that contain all data communications in the systemalong with their quality of service characteristics, and canautomatically generate the full set of communication slots for thosecommunications. The tools may automatically determine parameters of thecommunication slots such as data size, periodicity, etc. The tools mayoptionally group communications or perform other optimizations on thegenerated communication slots.

FIG. 6 is a flow chart of an example of a method 600 for transmittingmessages by a flexible deterministic communications network inaccordance with an embodiment of the present disclosure. At leastportions of the method 600 may be performed by the flexibledeterministic network 106 and/or applications 110, 128, 152 and 164 inFIG. 1.

In block 602, a message may be received by the flexible deterministicnetwork. The message may be a static, deterministic message or adynamic, non-deterministic message. The flexible deterministic networkmay be configured to determine which message traffic may be staticallyconfigured, i.e., cannot be changed at runtime, and which messagetraffic may be dynamically configured, i.e., can be changed at runtime.Static, deterministic messages correspond to statically configuredmessage traffic and dynamic, non-deterministic correspond to dynamicallyconfigured message traffic.

In block 604, the message may be checked against a current configurationof the flexible deterministic network. For example, the flexibledeterministic network may be currently configured or partiallyconfigured to transmit statically configured message traffic or thenetwork may be currently configured or partially configured to transmitdynamically configured message traffic. In block 606, if the messageconforms to the current configuration of the flexible deterministicnetwork, the method 600 may advance to block 608 and the message may betransmitted via the flexible deterministic network.

If the message does not conform to the current configuration of theflexible deterministic network in block 606, the method 600 may advanceto block 610. In block 610, the network or network controller, such ascontroller 180 in FIG. 1, may refrain from transmitting the message. Inan embodiment, a response may be transmitted by the network or networkcontroller to a node or application that the message was not transmittedor that the network is not configured for transmitting the message. Inanother embodiment, the node or application running on the node maydetect that the transmission of the message failed or was not sent. Forexample, an MMS node may transmit a dynamic, non-deterministic messagefor communication over the flexible deterministic network. The networkor network controller may determine that the network is not configuredor does not currently have sufficient bandwidth for transmitting thedynamically configured message. A response may be sent by the network ornetwork controller to the MMS node that the network is not configured ordoes not have sufficient bandwidth for transmitting the message. Inanother embodiment, the MMS node or application may detect that themessage failed or was not transmitted.

FIG. 7 is a flow chart of an example of a method 700 for transmittingmessages by a flexible deterministic communications network inaccordance with another embodiment of the present disclosure. In block702, a request may be received from a node or application running on anode to change communications needs of the flexible deterministicnetwork. For example an MMS node or application may request to transmita larger bandwidth message over the network. After receiving a responsethat the message failed or was not sent, or after detecting thattransmission of the message failed, the MMS node may send a request tothe network or network controller that a larger bandwidth is needed orother communication need.

In block 704, a determination may be made if the request can be approvedand at least a portion of the flexible deterministic network may bereconfigured to satisfy the larger bandwidth or requested communicationneed. Determining if the request for a change in communications needscan be approved may include but is not necessarily limited to anavailable bandwidth on the flexible deterministic network based on anyother communications between VMS nodes over network, an availability ofbandwidth on the network corresponding to a bandwidth of the request,and a duration of the request or reconfiguration of the network orportion of the network for dynamic message traffic. As previouslydiscussed VMS communications which may be critical to the operation ofthe vehicle may take priority over MMS communications.

In block 706, a determination may be made if the request forreconfiguring the flexible deterministic network was approved. If therequest was not approved, the method 700 may advance to block 708. Inblock 708, the MMS node or application may operate in a degraded state.In another embodiment, a monitoring unit such as mission mode manager188 in FIG. 1, may analyze the system and take corrective action.

If the request for a change in communications needs and resultingreconfiguring of the flexible deterministic network is approved in block706, the method 700 may advance to block 710. In block 710, the flexibledeterministic network may be reconfigured for transmitting thedynamically configured traffic. Any switches or switch mechanisms may beoperated to accommodate the new communications needs. An approval of therequest may be sent to the requesting MMS node or application. Theassociated end systems of the VMS nodes and MMS nodes may bereconfigured. Similar to that previously described, the end systems maybe reconfigured by using the routing tables associated with each endsystem for transmitting the dynamically configured message traffic.

FIG. 8 is a flow chart of an example of a method 800 for transmittingmessages by a flexible deterministic communications network inaccordance with a further embodiment of the present disclosure. In block802, reconfiguration of the network or mode change may be detected by amission mode manager. In block 804, a notification may be transmitted toother MMS nodes or applications to switch to the new mode orconfiguration for transmitting dynamically configured message traffic.Messages may then be transmitted by the MMS nodes or applications andVMS nodes or applications that conform to the new network configuration.

In block 806, the flexible deterministic network and end systems may bereconfigured for transmitting statically configured message traffic inresponse to a predetermined action. For example, the flexibledeterministic network and end systems may be reconfigured aftercompletion of transmission of the dynamically configured traffic orafter a request or predetermined action by a user to reconfigure thenetwork for statically configured message traffic.

FIG. 9 is a flow chart of an example of a method 900 for transmitting amessage formatted in a non-deterministic communications type protocolover a deterministic communications network or flexible deterministiccommunications network in accordance with an embodiment of the presentdisclosure. In block 902, a message may be received in anon-deterministic communications type protocol by a processor or a nodefrom a flexible deterministic network. For example, the message may be adata distribution service (DDS) communications protocol message or othernon-deterministic communications type message. As previously described,MMS nodes 244 a-244 n and mission sensor node 242 may communicate usingDDS communications protocol.

In block 904, the non-deterministic message may be processed by theabstraction layer. Blocks 906-910 are exemplary functions that may beperformed by an abstraction layer to process the non-deterministicmessage. In block 906, a quality of service (QoS) associated with thenon-deterministic message may be determined by the abstraction layer.

In block 908, if the message has reliability quality of service turnedon, the abstraction layer may send an acknowledgement. Theacknowledgement may be send through an acknowledgement communicationschannel that is associated with the communications channel on which themessage was received. If the message is a single-publisher message orfrom a single-publisher, the message may be handed over or passed to thesubscribing application.

In block 910, if the message is one that has multiple publishers, theabstraction layer may hand over or pass the message to the subscribingapplication depending on other associated quality of service parametersand whether the message from another publisher or messages from otherpublishers have been received via a communication channel associatedwith the other publisher or via a respective communication channelassociated with each of the other publishers. Whether a data value, orsample in DDS terminology, is provided to the subscriber may depend onfactors or parameters related to the quality of service. Examples of theparameters or factors may include but is not necessarily limited to“OWNERSHIP”, “OWNERSHIP_STRENGTH”, “TIME_BASED_FILTER”, “LIFESPAN”,“HISTORY”, and “RESOURCE_LIMITS”. OWNERSHIP may be exclusive or shared.OWNERSHIP_STRENGTH is used to determine which publisher's data isretained when EXCLUSIVE is selected. TIME_BASE_FILTER means only onevalue each “minimum_separation” period is presented to the subscriber.LIFESPAN means that data that is older than this value is dropped.HISTORY determines what happens if newer values are received prior tothis being read by the subscriber. RESOURCE_LIMITS provides that if“max_samples” is exceeded, data values are dropped to stay withinlimits.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems and methods according to various embodiments of the presentinvention. In this regard, each block in the flowchart or block diagramsmay represent a module, segment, or portion of instructions, whichcomprises one or more executable instructions for implementing thespecified logical function(s). In some alternative implementations, thefunctions noted in the block may occur out of the order noted in thefigures. For example, two blocks shown in succession may, in fact, beexecuted substantially concurrently, or the blocks may sometimes beexecuted in the reverse order, depending upon the functionalityinvolved. It will also be noted that each block of the block diagramsand/or flowchart illustration, and combinations of blocks in the blockdiagrams and/or flowchart illustration, can be implemented by specialpurpose hardware-based systems that perform the specified functions oracts or carry out combinations of special purpose hardware and computerinstructions.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of embodiments ofthe invention. As used herein, the singular forms “a”, “an” and “the”are intended to include the plural forms as well, unless the contextclearly indicates otherwise. It will be further understood that theterms “comprises” and/or “comprising,” when used in this specification,specify the presence of stated features, integers, steps, operations,elements, and/or components, but do not preclude the presence oraddition of one or more other features, integers, steps, operations,elements, components, and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present invention has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to embodiments of the invention in the form disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope and spirit of embodiments ofthe invention. The embodiment was chosen and described in order to bestexplain the principles of embodiments of the invention and the practicalapplication, and to enable others of ordinary skill in the art tounderstand embodiments of the invention for various embodiments withvarious modifications as are suited to the particular use contemplated.

Although specific embodiments have been illustrated and describedherein, those of ordinary skill in the art appreciate that anyarrangement which is calculated to achieve the same purpose may besubstituted for the specific embodiments shown and that embodiments ofthe invention have other applications in other environments. Thisapplication is intended to cover any adaptations or variations of thepresent invention. The following claims are in no way intended to limitthe scope of embodiments of the invention to the specific embodimentsdescribed herein.

What is claimed is:
 1. A method for transmitting messages, comprising:receiving a message; checking the received message against a currentconfiguration of a flexible deterministic communications network;transmitting the received message over the flexible deterministiccommunications network in response to the received message conforming tothe current configuration; refraining from transmitting the receivedmessage over the flexible deterministic communications network inresponse to the received message not conforming to the currentconfiguration; and reconfiguring the flexible deterministiccommunications network between communicating static, deterministicmessages and dynamic, non-deterministic messages based on which one ofthe static, deterministic messages or the dynamic, non-deterministicmessages is received by the flexible deterministic communicationsnetwork and the flexible deterministic communications network beingcurrently configured for communicating another one of the static,deterministic messages or the dynamic, non-deterministic messages,wherein reconfiguring the flexible deterministic network comprises:reconfiguring a switching mechanism, the switching mechanism comprisinga plurality of switches for routing messages between nodes, theswitching mechanism being configured to establish a static virtualchannel or a dynamic virtual channel between a particular pair of nodesin response to a type of message being transmitted between theparticular pair of nodes, the static virtual channel comprising a fixedsize bandwidth allocated for communicating the static, deterministicmessages and the dynamic virtual channel comprising a variable sizedbandwidth allocated for communicating the dynamic, non-deterministicmessages, wherein the message is received by a processor in the flexibledeterministic network and connected to the switching mechanism, theprocessor being configured to determine if the received message conformsto the current configuration of the flexible deterministiccommunications network, transmit the received message over the flexibledeterministic network in response to the received message conforming tothe current configuration of the flexible deterministic network, andreconfigure the flexible deterministic network by controlling theswitching mechanism in response to the received message not conformingto the current configuration of the flexible deterministic network; andonly interconnecting nodes onboard a vehicle by the flexibledeterministic communications network.
 2. The method of claim 1, furthercomprising: receiving a request from an application to reconfigure theflexible deterministic communications network based on communicationsneeds of the application; determining an approval of the request; andreconfiguring at least a portion of the flexible deterministic networkto accommodate the communications needs of the application in responseto approval of the request.
 3. The method of claim 2, whereindetermining if the request can be approved comprises determining anavailable bandwidth on the flexible communications network based oncurrent communications between a plurality of nodes over the flexibledeterministic network and the available bandwidth corresponding to abandwidth of the request.
 4. The method of claim 3, further comprising:reconfiguring an end system of at least each of the nodes communicatingwith one another, each node comprising a routing table, the routingtable being used to reconfigure the end system between transmitting orcommunicating static, deterministic messages and dynamic,non-deterministic messages; and reconfiguring the switch mechanism forinterconnecting the end systems.
 5. A system onboard a vehicle,comprising: a vehicle management system (VMS), the VMS comprising aplurality of VMS nodes for controlling operation of the vehicle; amission management system (MMS), the MMS comprising a plurality of MMSnodes for controlling equipment associated with a mission of thevehicle; and a flexible deterministic communications networkconfigurable for communications between each of the VMS nodes, betweeneach of the MMS nodes and between the VMS nodes and the MMS nodes,wherein the VMS nodes communicate using static, deterministic messagesand the MMS nodes communicate using dynamic, non-deterministic messages,wherein the flexible deterministic communications network isreconfigured between communicating the static, deterministic messagesand the dynamic, non-deterministic messages based on which one of thestatic, deterministic messages or the dynamic, non-deterministicmessages is received by the flexible deterministic communicationsnetwork and the flexible deterministic communications network beingcurrently configured for communicating another one of the static,deterministic messages or the dynamic, non-deterministic messages,wherein the flexible deterministic communications network onlyinterconnects nodes onboard the vehicle and wherein the flexibledeterministic network comprises: a switching mechanism for reconfiguringthe flexible deterministic network, the switching mechanism comprising aplurality of switches for routing messages between the VMS nodes and theMMS nodes, the switching mechanism being configured to establish astatic virtual channel or a dynamic virtual channel between a particularpair of nodes in response to a type of message being transmitted betweenthe particular pair of nodes, the static virtual channel comprising afixed size bandwidth allocated for communicating the static,deterministic messages and the dynamic virtual channel comprising avariable sized bandwidth allocated for communicating the dynamic,non-deterministic messages; and a processor connected to the switchingmechanism, the processor being configured to perform a set of functionscomprising: receiving a message; determining if the received messageconforms to a current configuration of the flexible deterministiccommunication network; transmitting the received message over theflexible deterministic communications network in response to thereceived message conforming to the current configuration of the flexibledeterministic network; and reconfiguring the flexible deterministiccommunications network by controlling the switching mechanism inresponse to the received message not conforming to the currentconfiguration of the flexible deterministic network.
 6. The system ofclaim 1, wherein the flexible deterministic network comprises: an endsystem associated with each VMS node, each VMS node end systemcomprising a routing table, the routing table being used to reconfigurethe VMS end system for transmitting or communicating either the static,deterministic messages or the dynamic, non-deterministic messages; anend system associated with each MMS node, each MMS node end systemcomprising a routing table, the routing table being used to reconfigurethe MMS end system for transmitting or communicating either the static,deterministic messages or the dynamic, non-deterministic messages; andwherein the switch mechanism is configurable for interconnecting the endsystems.
 7. The system of claim 6, wherein the particular pair of nodescomprise any combination of VMS nodes and MMS nodes.
 8. The system ofclaim 1, wherein the flexible deterministic communications networkcomprises: a set of static virtual channels; and a set of dynamicvirtual channels, the flexible deterministic communications networkbeing configurable for communicating the static, deterministic messagesusing the static virtual channels and the flexible deterministiccommunications network being configurable for communicating the dynamic,non-deterministic messages using the set of dynamic virtual channels. 9.The system of claim 8, wherein the flexible deterministic network isconfigurable for communications between a respective one or more of theVMS nodes and a respective one or more of the MMS nodes using at leastone of the set of static virtual channels and the set of dynamic virtualchannels.
 10. The system of claim 1, wherein the processor is configuredto perform a set of functions further comprising: refraining fromtransmitting the received message over the flexible deterministiccommunications network in response to the received message notconforming to the current configuration.
 11. The system of claim 10,wherein the set of functions further comprises: receiving a request, bythe processor associated with the flexible deterministic network, froman application operating on one of the MMS nodes or VMS nodes toreconfigure the flexible deterministic communications network based oncommunications needs of the application; determining, by the processorassociated with the flexible deterministic network, an approval of therequest; and reconfiguring at least a portion of the flexibledeterministic network by the switching mechanism of the flexibledeterministic network to accommodate the communications needs of theapplication in response to approval of the request.
 12. The system ofclaim 11, wherein reconfiguring at least a portion of the flexibledeterministic network comprises: reconfiguring an end system associatedwith each of the MMS nodes or VMS nodes communicating with one another;and reconfiguring the switch mechanism for interconnecting the endsystems.
 13. The system of claim 12, wherein the requesting applicationcoordinates reconfiguration of the end systems and the switch mechanism.14. The system of claim 11, wherein determining if the request can beapproved comprises determining an available bandwidth on the flexibledeterministic communications network based on existing communicationsbetween the nodes over the flexible deterministic network and at leastthe available bandwidth corresponding to a bandwidth of the request. 15.The system of claim 11, wherein at least the requesting applicationoperates in a degraded state in response to the request to reconfigurethe flexible deterministic communications network not being approved.16. The system of claim 1, wherein the system is deployed on anaircraft.
 17. The system of claim 1, further comprising a mission modemanager that detects reconfiguration of the flexible deterministicnetwork, wherein the mission mode manager transmits a notification toeach of the MMS nodes that the flexible deterministic network has beenreconfigured and to switch to a new configuration for communicating overthe reconfigured flexible deterministic network.
 18. A system onboard avehicle, comprising: a vehicle management system (VMS), the VMScomprising a plurality of VMS nodes for controlling operation of thevehicle; a mission management system (MMS), the MMS comprising aplurality of MMS nodes for controlling equipment associated with amission of the vehicle; an application running on each VMS node and eachMMS node; a data distribution service layer associated with eachapplication for communications between the applications; an abstractionlayer associated with each application, the abstraction layer beingconfigured to hide reconfiguration of the data distribution servicelayer from the application for use of a deterministic communicationsprotocol; and a flexible deterministic communications networkconfigurable for communications between each of the VMS nodes, betweeneach of the MMS nodes and between the VMS nodes and the MMS nodes,wherein the VMS nodes communicate using static, deterministic messagesand the MMS nodes communicate using dynamic, non-deterministic messages,wherein the flexible deterministic communications network isreconfigured between communicating the static, deterministic messagesand the dynamic, non-deterministic messages based on which one of thestatic, deterministic messages or the dynamic, non-deterministicmessages is received by the flexible deterministic communicationsnetwork and the flexible deterministic communications network beingcurrently configured for communicating another one of the static,deterministic messages or the dynamic, non-deterministic messages,wherein the flexible deterministic communications network onlyinterconnects nodes onboard the vehicle and wherein the flexibledeterministic network comprises: a switching mechanism for reconfiguringthe flexible deterministic network, the switching mechanism comprising aplurality of switches for routing messages between the VMS nodes and theMMS nodes, the switching mechanism being configured to establish astatic virtual channel or a dynamic virtual channel between a particularpair of nodes in response to a type of message being transmitted betweenthe particular pair of nodes, the static virtual channel comprising afixed size bandwidth allocated for communicating the static,deterministic messages and the dynamic virtual channel comprising avariable sized bandwidth allocated for communicating the dynamic,non-deterministic messages; and a processor connected to the switchingmechanism, the processor being configured to perform a set of functionscomprising: receiving a message; determining if the received messageconforms to a current configuration of the flexible deterministiccommunication network; transmitting the received message over theflexible deterministic communications network in response to thereceived message conforming to the current configuration of the flexibledeterministic network; and reconfiguring the flexible deterministiccommunications network by controlling the switching mechanism inresponse to the received message not conforming to the currentconfiguration of the flexible deterministic network.
 19. The system ofclaim 18, wherein the abstraction layer is configured to perform atleast one of a set of functions comprising: determining a quality ofservice associated with a message formatted in a non-deterministiccommunications protocol; sending an acknowledgement to a publisher ofthe message formatted in the non-deterministic communications protocolin response to the message having a reliability quality of serviceturned on and the message being from a single publisher and the messageis handed over to a subscribing application; and passing the message inthe non-deterministic communications protocol to a subscribingapplication in response to the message being a message that has multiplepublishers and depending on one or more quality of service parametersassociated with the message, the one or more quality of serviceparameters comprising ownership, an ownership strength, a time basedfilter, a lifespan, history and resource limits.